|
182 |
|
# Использование виртуального окружения
Введение
При работе над отдельными py
-проектами может получиться так, что для запуска одного проекта требуется одна версия какого-либо модуля, а для запуска второго проекта - другая.
Именно поэтому зависимости проекта лучше ставить не в систему, засоряя её, а в отдельное виртуальное окружение Python
-а, которое будет использоваться для запуска конкретного проекта.
Когда работа над проектом завершена, просто удаляем папку с виртуальным окружением, тем самым освобождая место в системе.
А если проект потребуется запустить, то все зависимости устанавливаем командой:
pip3 install -r requirenments.txt
Для этого, конечно же, требуется вести проект корректно, дополняя файл requirenments.txt
всеми модулями, которые подключаются в проект во время разработки.
Установка виртуального окружения
Пробуем следующие команды или самостоятельно ищем название пакета для вашей ОС:
sudo apt install python3-virtualenv
sudo apt-get install python3-module-virtualen
Создание виртуального окружения
Придумываем название папки, которая будет использоваться в качестве виртуального окружения и создаём её, напр., в разрабатываемом проекте:
virtualenv my_project_env
Если система выдаёт ошибку, что команда virtualenv
не существует, пробуем установить через pip3 install virtualenv
и повторяем попытку.
Данная команда:
- создаст каталог
my_project_env
- создаст необходимые файлы виртуального окружения внутри этого каталога
После чего активируем виртуальное окружение:
source my_project_env/bin/activate
Создание окружения завершено. Можно запускать проект:
python3 my_project_app.py
Теперь проект будет подтягивать все зависимости из созданного окружения и игнорировать системные.
Как это работает
Виртуальное окружение активируется для текущей сессии bash
. Если мы закроем терминал, то виртуальное окружение нужно будет заново активировать командой:
source my_project_env/bin/activate
Если этого не сделать, то при запуске проекта командой python3 my_project_app.py
зависимости будут искаться в системе, а не в папке ./my_project_env/lib
.
Удаление виртуального окружения
Если работа завершена и/или виртуальное окружение больше не требуется, то просто удаляем каталог my_project_env
.
Все модули, которые используются для запуска проекта, хранятся именно в этой директории.